home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / SNNSV32.ZIP / SNNSv3.2 / kernel / sources / kr_art2.h < prev    next >
C/C++ Source or Header  |  1994-04-25  |  7KB  |  276 lines

  1. /*****************************************************************************
  2.   FILE           : kr_art2.h
  3.   SHORTNAME      : kr_art2 
  4.   SNNS VERSION   : 3.2
  5.  
  6.   PURPOSE        : SNNS Kernel Function Prototypes for ART2-Networks
  7.   NOTES          :
  8.  
  9.   AUTHOR         : Kai-Uwe Herrmann
  10.   DATE           : 17.05.92
  11.  
  12.   CHANGED BY     : Sven Doering
  13.   IDENTIFICATION : @(#)kr_art2.h    1.7 3/15/94
  14.   SCCS VERSION   : 1.7
  15.   LAST CHANGE    : 3/15/94
  16.  
  17.              Copyright (c) 1990-1994  SNNS Group, IPVR, Univ. Stuttgart, FRG
  18.  
  19. ******************************************************************************/
  20. #ifndef _KR_ART2_DEFINED_
  21. #define  _KR_ART2_DEFINED_
  22.  
  23.  
  24. /************* Global variables
  25. *************/
  26. extern int              Art2_NoOfRecUnits;
  27. extern  struct Unit     *Art2_cl_unit;
  28. extern  struct Unit     *Art2_nc_unit;
  29.  
  30. /**************** Function Prototypes
  31. ****************/
  32.  
  33. /***************************************************************************/
  34. /* kra2_init_propagate ()
  35.  
  36.    initializes net for propagation.
  37. */
  38. extern  krui_err  kra2_init_propagate (
  39.                                       void
  40.                                      );
  41.  
  42.  
  43. /***************************************************************************/
  44. /* kra2_sort ()
  45.  
  46.    Set logical layer numbers and logical unit numbers in an ART2 network.
  47.    Also this function checks, whether the network is an ART2 network or not.
  48.    Returns an error code, when actual network is no ART2 architecture.
  49. */
  50. extern  krui_err  kra2_sort (
  51.                             void
  52.                            );
  53.  
  54.  
  55.  
  56. /***************************************************************************/
  57. /* kra2_set_params ()
  58.  
  59.    Sets the value of Parameters rho, a, b, c, d, theta, which are stored locally
  60.    in this Module.
  61. */
  62. extern  krui_err kra2_set_params (
  63.                                 FlintType rho,
  64.                                 FlintType param_a,
  65.                                 FlintType param_b,
  66.                                 FlintType param_c,
  67.                                 FlintType param_d,
  68.                                 FlintType theta
  69.                                );
  70.  
  71.  
  72. /***************************************************************************/
  73. /* kra2_get_rho ()
  74.  
  75.    returns the actual value of Parameter rho.
  76. */
  77. extern  FlintType kra2_get_rho (
  78.                                void
  79.                               );
  80.  
  81. /***************************************************************************/
  82. /* kra2_get_a ()
  83.  
  84.    returns the actual value of Parameter a.
  85. */
  86.  FlintType kra2_get_a (
  87.                              void
  88.                             );
  89.  
  90. /***************************************************************************/
  91. /* kra2_get_b ()
  92.  
  93.    returns the actual value of Parameter b.
  94. */
  95. extern  FlintType kra2_get_b (
  96.                              void
  97.                             );
  98.  
  99. /***************************************************************************/
  100. /* kra2_get_c ()
  101.  
  102.    returns the actual value of Parameter c.
  103. */
  104. extern  FlintType kra2_get_c (
  105.                              void
  106.                             );
  107.  
  108.  
  109. /***************************************************************************/
  110. /* kra2_get_d ()
  111.  
  112.    returns the actual value of Parameter d.
  113. */
  114. extern  FlintType kra2_get_d (
  115.                              void
  116.                             );
  117.  
  118.  
  119. /***************************************************************************/
  120. /* kra2_get_theta ()
  121.  
  122.    returns the actual value of Parameter theta.
  123. */
  124. extern  FlintType kra2_get_theta (
  125.                                  void
  126.                                 );
  127.  
  128.  
  129. /***************************************************************************/
  130. /* kra2_checkReset ()
  131.  
  132.    checks if global reset has to be sent into network
  133. */
  134. extern  void kra2_checkReset (
  135.                              void
  136.                             );
  137.  
  138.  
  139.  
  140.  
  141. /***************************************************************************/
  142. /* kra2_Reset ()
  143.  
  144.    returns TRUE if global reset is actually active, else FALSE
  145. */
  146. extern  bool kra2_Reset (
  147.                         void
  148.                        );
  149.  
  150.  
  151.  
  152.  
  153. /***************************************************************************/
  154. /* kra2_init_pattern ()
  155.  
  156.    sets current phase to bottom up
  157. */
  158. extern  void kra2_init_pattern (
  159.                                void
  160.                               );
  161.  
  162.  
  163.  
  164. /***************************************************************************/
  165. /* kra2_top_dn_phase ()
  166.  
  167.    sets current phase to bottom up
  168. */
  169. extern  bool kra2_topdn_phase (
  170.                              void
  171.                             );
  172.  
  173.  
  174.  
  175. /***************************************************************************/
  176. /* kra2_compute_norms ()
  177.  
  178.    computes the L2 vector norms of inp, w, u, v, p, r
  179. */
  180.  
  181. extern  void kra2_compute_norms (
  182.                                 void
  183.                                );
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190. /***************************************************************************/
  191. /* kra2_L2_Norm ()
  192.  
  193.    returns the L2-Norm of a vector which is determined by the number
  194.    of the Layer in the topo_ptr_array.
  195. */
  196.  
  197. extern  FlintType kra2_L2_Norm (
  198.                                int VectorNr
  199.                               );
  200.  
  201.  
  202.  
  203. /***************************************************************************/
  204. /* kra2_classified ()
  205.  
  206.    returns TRUE if net has classified input pattern
  207. */
  208. extern  bool kra2_classified (
  209.                              void
  210.                             );
  211.  
  212.  
  213.  
  214. /***************************************************************************/
  215. /* kra2_not_classifiable ()
  216.  
  217.    returns TRUE if net is not able to classify input pattern
  218. */
  219. extern  bool kra2_not_classifiable (
  220.                                    void
  221.                                   );
  222.  
  223.  
  224.  
  225. /***************************************************************************/
  226. /* kra2_save_for_stability_check ()
  227.  
  228.    saves informaion of relevant unit in F1-Layer for stability check
  229. */
  230. extern  void kra2_save_for_stability_check (
  231.                                            void
  232.                                           );
  233.  
  234.  
  235.  
  236. /***************************************************************************/
  237. /* kra2_check_f1_stability ()
  238.  
  239.    checks, if F1-Layer is stable.
  240. */
  241. extern  void kra2_check_f1_stability (
  242.                                      void
  243.                                     );
  244.  
  245.  
  246.  
  247.  
  248.  
  249. /***************************************************************************/
  250. /* kra2_f1_stable ()
  251.  
  252.    returns TRUE if F1-Layer is stable
  253. */
  254. extern  bool kra2_f1_stable (
  255.                             void
  256.                            );
  257.  
  258.  
  259.  
  260.  
  261. /***************************************************************************/
  262. /* kra2_getClassNo ()
  263.  
  264.    Returns the number of the actually activated class J, 1 <= J <= M
  265. */
  266. extern  int  kra2_getClassNo (void
  267.                             );
  268.  
  269.  
  270.  
  271.  
  272. #endif 
  273.  
  274.  
  275. /* 275 lines generated by deleteprivatedefinitions.awk */
  276.